<!doctype html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Document</title>
</head>
<body>
<pre>
    发一个随机红包，100块钱给10个人。每个人最多12块钱，最少6块钱。怎么分？
    http://www.tuicool.com/articles/NvqmUzU
</pre>

<script>
    function fa(){
        var total=100,num=10,max,min=1;
        var ret=[],yet= 0,r;
        for(var i=0;i<num;i++){
            if(i==num-1){
                r=total-yet;
            }else{
                max=(total-yet)/(num-i);
                r=Math.floor((Math.random()*(max-min)+min));
            }
            yet+=r;
            ret.push(r);
        }
        return ret.sort(function(){
            return Math.random()-0.5;
        });
    }


    //test:
    var r;
    for(var i=0;i<100;i++){

        r=fa();
        console.log(r, r.reduce(function (a, b) {
                return a+b;
            }),
                Math.max.apply(Math,r)
        );

    }

</script>
</body>
</html>